#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2020/10/2 11:21
# @USER    : Shengji He
# @File    : JewlesStones.py
# @Software: PyCharm
# @Version  : Python-
# @TASK:

class Solution:
    def numJewelsInStones(self, J: str, S: str) -> int:
        """
        You're given strings J representing the types of stones that are jewels, and S representing the stones you 
        have.  Each character in S is a type of stone you have.  You want to know how many of the stones you 
        have are also jewels.
        
        The letters in J are guaranteed distinct, and all characters in J and S are letters. Letters are case 
        sensitive, so "a" is considered a different type of stone from "A".
        
        Example 1:
            Input: J = "aA", S = "aAAbbbb"
            Output: 3

        Example 2:
            Input: J = "z", S = "ZZ"
            Output: 0

        Note:
            - S and J will consist of letters and have length at most 50.
            - The characters in J are distinct.

        :param J:
        :param S:
        :return:
        """
        ans = 0
        if not J or not S:
            return ans
        for s in S:
            if s in J:
                ans += 1
        return ans


if __name__ == '__main__':
    solution = Solution()
    J = 'aA'
    S = 'aAAbbbb'
    print(solution.numJewelsInStones(J, S))
    print('done')
